package com.wicket.okrcomponent.integration;

import com.wicket.okrcomponent.common.ro.OkrResult;
import com.wicket.okrcomponent.integration.dto.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import  com.wicket.okrcomponent.integration.dto.*;
import  com.wicket.okrcomponent.integration.dto.*;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@FeignClient("component")
public interface FwCompTemplateEngineClient {
    /**
     * D2-8查询语义引擎详情（公共）
     */
    @PostMapping("/comp/templateEngine/querySemanticEngineDetailCom")
    public OkrResult<QuerySemanticEngineDetailComRespDto> querySemanticEngineDetailCom(QuerySemanticEngineDetailComReqDto reqDTO);

    /**
   * D2-8查询语义引擎详情
   */
    @PostMapping("/comp/templateEngine/querySemanticEngineDetail")
    public OkrResult<QuerySemanticEngineDetailRespDto> querySemanticEngineDetail(QuerySemanticEngineDetailReqDto reqDTO);

    /**
   * D2-8查语义引擎列表
   */
    @PostMapping("/comp/templateEngine/querySemanticEngineList")
    public OkrResult<QuerySemanticEngineListRespDto> querySemanticEngineList(QuerySemanticEngineListReqDto reqDTO);

    /**
   * D2-8修改语义引擎
   */
    @PostMapping("/comp/templateEngine/updateSemanticEngine")
    public OkrResult<UpdateSemanticEngineRespDto> updateSemanticEngine(UpdateSemanticEngineReqDto reqDTO);

    /**
   * D2-8新增语义引擎
   */
    @PostMapping("/comp/templateEngine/addSemanticEngine")
    public OkrResult<AddSemanticEngineRespDto> addSemanticEngine(AddSemanticEngineReqDto reqDTO);

    /**
   * D2-8生成语义实例（公共）
   */
    @PostMapping("/comp/templateEngine/generateSemanticInstance")
    public OkrResult<GenerateSemanticInstanceRespDto> generateSemanticInstance(GenerateSemanticInstanceReqDto reqDTO);
/**
   * D2生成时间周期等语义内容服务(公共)
   */
    @PostMapping("/comp/templateEngine/generateTimeCycleEtcSemanticInstanceCom")
    public OkrResult<GenerateTimeCycleEtcSemanticInstanceComRespDto> generateTimeCycleEtcSemanticInstanceCom(GenerateTimeCycleEtcSemanticInstanceComReqDto reqDTO);
/**
   * D2生成批次名称等语义内容服务(公共)
   */
    @PostMapping("/comp/templateEngine/generateBatchNameEtcSemanticInstanceCom")
    public OkrResult<GenerateBatchNameEtcSemanticInstanceComRespDto> generateBatchNameEtcSemanticInstanceCom(GenerateBatchNameEtcSemanticInstanceComReqDto reqDTO);
/**
   * D2-生成定时调度任务语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateTimingDispatchTaskSemanticInstanceCom")
    public OkrResult<GenerateTimingDispatchTaskSemanticInstanceComRespDto> generateTimingDispatchTaskSemanticInstanceCom(GenerateTimingDispatchTaskSemanticInstanceComReqDto reqDTO);
/**
   * D2生成对象校验语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateObjectCheckSemanticInstanceCom")
    public OkrResult<GenerateObjectCheckSemanticInstanceComRespDto> generateObjectCheckSemanticInstanceCom(GenerateObjectCheckSemanticInstanceComReqDto reqDTO);
/**
   * D2生成消息语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateMessageSemanticInstanceCom")
    public OkrResult<GenerateMessageSemanticInstanceComRespDto> generateMessageSemanticInstanceCom(GenerateMessageSemanticInstanceComReqDto reqDTO);
/**
   * D2获取分布式锁语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/obtainLockSemanticInstanceCom")
    public OkrResult<ObtainLockSemanticInstanceComRespDto> obtainLockSemanticInstanceCom(ObtainLockSemanticInstanceComReqDto reqDTO);
/**
   * D2生成第三方问答问题语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateThirdPartyIntelligentQaSemanticInstanceCom")
    public OkrResult<GenerateThirdPartyIntelligentQaSemanticInstanceComRespDto> generateThirdPartyIntelligentQaSemanticInstanceCom(GenerateThirdPartyIntelligentQaSemanticInstanceComReqDto reqDTO);
/**
   * D2生成消息标题及内容语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateMsgTitleAndContentSemanticInstanceCom")
    public OkrResult<GenerateMsgTitleAndContentSemanticInstanceComRespDto> generateMsgTitleAndContentSemanticInstanceCom(GenerateMsgTitleAndContentSemanticInstanceComReqDto reqDTO);
/**
   * D2生成消息标题及内容(公共)
   */
    @PostMapping("/comp/templateEngine/generateMsgTitleAndContentCom")
    public OkrResult<GenerateMsgTitleAndContentComRespDto> generateMsgTitleAndContentCom(GenerateMsgTitleAndContentComReqDto reqDTO);
/**
   * D2生成账单流水业务故事(公共)
   */
    @PostMapping("/comp/templateEngine/generateBillStreamBizStoryCom")
    public OkrResult<GenerateBillStreamBizStoryComRespDto> generateBillStreamBizStoryCom(GenerateBillStreamBizStoryComReqDto reqDTO);
/**
   * D2-生成时长文案语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateDurationTextSemanticInstanceCom")
    public OkrResult<GenerateDurationTextSemanticInstanceComRespDto> generateDurationTextSemanticInstanceCom(GenerateDurationTextSemanticInstanceComReqDto reqDTO);
/**
   * D2执行机器人场景语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/implementRoboticSceneSemanticEngineCom")
    public OkrResult<ImplementRoboticSceneSemanticEngineComRespDto> implementRoboticSceneSemanticEngineCom(ImplementRoboticSceneSemanticEngineComReqDto reqDTO);
/**
   * D2生成语义实例故事(公共)
   */
    @PostMapping("/comp/templateEngine/generateSemanticInstanceStoryCom")
    public OkrResult<GenerateSemanticInstanceStoryComRespDto> generateSemanticInstanceStoryCom(GenerateSemanticInstanceStoryComReqDto reqDTO);
/**
   * D2生成语义实例(公共)
   */
    @PostMapping("/comp/templateEngine/generateSemanticInstanceCom")
    public OkrResult<GenerateSemanticInstanceComRespDto> generateSemanticInstanceCom(GenerateSemanticInstanceComReqDto reqDTO);
/**
   * D2分析账单流水业务故事(公共)
   */
    @PostMapping("/comp/templateEngine/analysisBillStreamBizStoryCom")
    public OkrResult<AnalysisBillStreamBizStoryComRespDto> analysisBillStreamBizStoryCom(AnalysisBillStreamBizStoryComReqDto reqDTO);
    //
}
